C++-Makro wird falsch erweitertC++

Programme in C++. Entwicklerforum
Guest
 C++-Makro wird falsch erweitert

Post by Guest »

Der Code für COUNT_ARGS_IMPL lautet

Code: Select all

#define COUNT_ARGS_IMPL(macro, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, N, ...) _1
Warum lässt der Visual Studio-Compiler die gesamten var_args des vorherigen Makros im ersten Argument erfassen? Wenn ich den gleichen Code versuche, aber nicht verschachtelt, funktioniert er einwandfrei. Normalerweise soll es das Makro##N zurückgeben, aber ich habe das beim Testen gemacht und es macht keinen Sinn.
Ich habe getestet, ohne den Makronamen an count args und have zu übergeben Die Anzahl wurde vorab berechnet, bevor das Makro „shader_program“ ausgeführt wird, aber das Problem besteht weiterhin.
Image
Image

Wenn Sie die gesamte Datei möchten, ist dies hier.

Code: Select all

#pragma once
#define GLAD_GL_IMPLEMENTATION
#include 
#include 
#include 
#include 
#include 
#include 

static std::string readShader(const char const* location)
{
char fileName[256] = "shaders\\";
strcat_s(fileName, location);
std::ifstream stream(fileName);

if (!stream)
{
std::cerr

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post
  • C++-Makro wird falsch erweitert
    by Guest » » in C++
    0 Replies
    2 Views
    Last post by Guest
  • Java Generics Wildcard: vs
    by Anonymous » » in Java
    0 Replies
    21 Views
    Last post by Anonymous
  • Wann sollte ich vs verwenden? Erweitert die Zahl in Java Generics?
    by Anonymous » » in Java
    0 Replies
    11 Views
    Last post by Anonymous
  • Wann sollte ich vs verwenden? Erweitert die Zahl in Java Generics? [Duplikat]
    by Anonymous » » in Java
    0 Replies
    9 Views
    Last post by Anonymous
  • Makro zum Generieren verketteter Sonst-Ifs
    by Guest » » in C++
    0 Replies
    21 Views
    Last post by Guest