# Creating a Blueprint implementable function in C++

**URL:** <https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003>\
**Category:** Blueprint\
**Tags:** unreal-engine, function, Scripting, Blueprint, question, CPP\
**Created:** [January 23, 2016, 1:51am UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003 "2016-01-23T01:51:15Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![joelComberiati](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@joelComberiati](https://forums.unrealengine.com/u/joelComberiati)\
**Post date:** [January 23, 2016, 1:51am UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003/1 "2016-01-23T01:51:15Z")

</div>

So, I know there are tons of questions out there asking the same thing, but i cannot seem to get anything to work.

This is what i tried:

Playercharacter.h

```
UFUNCTION(BlueprintNativeEvent)
	void SetInventoryItemsGUI_Implementation(TArray<FText> items);

```

PlayerCharacter.cpp

```
void APlayerCharacter::SetInventoryItemsGUI_Implementation(TArray<FText> items){

}

```

I am getting these errors:

```
\HorrorGame\Intermediate\Build\Win64\UE4Editor\Inc\HorrorGame\HorrorGame.generated.cpp(160): error C2511: 'void APlayerCharacter::SetInventoryItemsGUI_Implementation(const TArray<FText,FDefaultAllocator> &)' : overloaded member function not found in 'APlayerCharacter'

\HorrorGame\Source\HorrorGame\PlayerCharacter.h(18) : see declaration of 'APlayerCharacter'

HorrorGame.generated.cpp(163): error C2352: 'UObject::FindFunctionChecked' : illegal call of non-static member function

c:\program files\epic games\4.9\engine\source\runtime\coreuobject\public\uobject\UObject.h(752) : see declaration of 'UObject::FindFunctionChecked'
```

---

<div class="post-metadata">

**Author:** ![Shadowriver](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Shadowriver](https://forums.unrealengine.com/u/Shadowriver)\
**Post date:** [January 23, 2016, 2:31am UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003/2 "2016-01-23T02:31:41Z")

</div>

At base declaration, you declere native event without \_Implementation surrfix

```
UFUNCTION(BlueprintNativeEvent)
void SetInventoryItemsGUI(TArray<FText> items);

```

UHT will generate \_Implementation deceleration automatically so you don’t need to declare it, but in farther subclasses you override implementation using the surrfix like this:

```
virtual void SetInventoryItemsGUI_Implementation(TArray items) override;

```

and always you define (code) function with that surrfix where ever you use it, so don’t change anything in cpp

---

<div class="post-metadata">

**Author:** ![joelComberiati](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@joelComberiati](https://forums.unrealengine.com/u/joelComberiati)\
**Post date:** [January 23, 2016, 2:57am UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003/3 "2016-01-23T02:57:09Z")

</div>

I just tried this, and yet im getting the same error

---

<div class="post-metadata">

**Author:** ![Shadowriver](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Shadowriver](https://forums.unrealengine.com/u/Shadowriver)\
**Post date:** [January 23, 2016, 3:03am UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003/4 "2016-01-23T03:03:20Z")

</div>

change argument to as error say that generated code wants

```
const TArray<FText> items

```

or

```
TArray<FText>& items

```

---

<div class="post-metadata">

**Author:** ![joelComberiati](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@joelComberiati](https://forums.unrealengine.com/u/joelComberiati)\
**Post date:** [January 23, 2016, 3:09am UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003/5 "2016-01-23T03:09:39Z")

</div>

AH, its magic, it works, I tried making it a static function. Cant believe I didnt think of that, thanks

---

<div class="post-metadata">

**Author:** ![joelComberiati](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@joelComberiati](https://forums.unrealengine.com/u/joelComberiati)\
**Post date:** [January 23, 2016, 3:22am UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003/6 "2016-01-23T03:22:29Z")

</div>

actually its not showing up in the blueprint

---

<div class="post-metadata">

**Author:** ![joelComberiati](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@joelComberiati](https://forums.unrealengine.com/u/joelComberiati)\
**Post date:** [January 23, 2016, 3:32am UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003/7 "2016-01-23T03:32:11Z")

</div>

I also tried changing it to a BlueprintImplementableEvent, and then got rid of everything in the .cpp file

---

<div class="post-metadata">

**Author:** ![Shadowriver](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Shadowriver](https://forums.unrealengine.com/u/Shadowriver)\
**Post date:** [January 23, 2016, 3:35am UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003/8 "2016-01-23T03:35:03Z")

</div>

Where do you looking? do you look for event or function override? if you dont see in one it will be in another. If i remeber right it depends on if your function return anything or not

---

<div class="post-metadata">

**Author:** ![joelComberiati](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@joelComberiati](https://forums.unrealengine.com/u/joelComberiati)\
**Post date:** [January 23, 2016, 4:08am UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003/9 "2016-01-23T04:08:18Z")

</div>

I checked both, and then searched it, but I will check again, I also tried searching it by right clicking and putting in the name

---

<div class="post-metadata">

**Author:** ![joelComberiati](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@joelComberiati](https://forums.unrealengine.com/u/joelComberiati)\
**Post date:** [January 23, 2016, 4:55pm UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003/10 "2016-01-23T16:55:10Z")

</div>

turns out hot reload does not work, its in there now

---

<div class="post-metadata">

**Author:** ![Shadowriver](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Shadowriver](https://forums.unrealengine.com/u/Shadowriver)\
**Post date:** [January 23, 2016, 5:26pm UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003/11 "2016-01-23T17:26:52Z")

</div>

Ok 🙂 yea hot reload is buggy

---

<div class="post-metadata">

**Author:** ![Zieg\_Reborn](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Zieg\_Reborn](https://forums.unrealengine.com/u/Zieg_Reborn)\
**Post date:** [July 23, 2025, 12:51pm UTC](https://forums.unrealengine.com/t/creating-a-blueprint-implementable-function-in-c/345003/12 "2025-07-23T12:51:57Z")

</div>

Not to necro this thread but I ran into it while trying to use FText within a BlueprintImplementableEvent and it came back with a lot of errors. I ended up getting it working by declaring the FText as const FText& (parameterName) and it compiled properly and was showing up in Blueprints to be used correctly. Tested it and it seems to function properly.

Just in case anyone runs into this in the future.
