Trying to place the following code into a c++ header -
i'm working put similar string of code header bool can used multiple .cpp files. i'm having issues compiling after adding program , hoping assistance.
here code:
bool isuseradmin(void) { bool b; sid_identifier_authority ntauthority = security_nt_authority; psid administratorsgroup; b = allocateandinitializesid( &ntauthority, 2, security_builtin_domain_rid, domain_alias_rid_admins, 0, 0, 0, 0, 0, 0, &administratorsgroup); if(b) { if (!checktokenmembership( null, administratorsgroup, &b)) { b = false; } freesid(administratorsgroup); } return(b); }
thank help.
function definitions don't belong in header, because naturally leads multiply defined symbols.
you can combat using
static
- marking function declaration+definitionstatic
make local tu (translation unit, i.e.cpp
file)static inline
- anonymous namespaces.
enclosing unnames namespace so:namespace { /*function definition*/ }
makes local tu - (hackishly) making function template
however, don't recommend doing unless there benefit it. you'd have start worryin odr (one-definition-rule) , since had ask question, i'm going assume bit beyond experience language.
Comments
Post a Comment