From MSDN - IDispatch::GetIDsOfNames method:


Caller-allocated array, each element of which contains an identifier (ID) corresponding to one of the names passed in the rgszNames array.

I've understood those __ which things as just inversion of prepositions. For example, when I see this clause: “Trees of which a forest consists.”, I just move the of to the end of it: “Trees which a forest consists of.”

But in this case, it seems the method does not work properly. I cannot understand it: “Caller-allocated array, each element which contains an identifier (ID) corresponding to one of the names passed in the rgszNames array of.”

I interpreted the sentence as “A caller-allocated array whose elements contain an ID corresponding to one of the names passed in the rgszNames array”. I can guess what it means, but I want to understand the grammatical structure of the sentence, so as to know the reason why it brings the meaning.

I've read:

  • 1
    As a learner: "of which" is the formal form of "whose". I mean it's preferable to use "of which" rather than "whose" in formal writing.
    – Cardinal
    Dec 21 '17 at 10:02
  • Now I get the concept. I stopped moving the preposition to the end of the sentence to understand it. Instead I put the modified noun (a caller-allocated array herein) in place of the basic ones, such as which, whom, what, and et cetera, and think of the each element of which where the which is "the array" to be a single relative pronoun that connects the two things in-between. It makes perfect sense and would be the right way to interpret those I guess. Jul 18 '18 at 13:24

Your guess is correct. Which does indeed refer back to the caller-allocated array.

You are not wrong in replacing of which with whose, but especially in formal writing, there are people that like to stick to using who for people only (or at least, animate objects).

After all, whose is nothing else than a short version of of whom, completely similar to of which. But we don't have an equivalent "short version" of of which (which could be *which's or something like that?).

So formally we use who for people, which for objects:

The man of whom the car was stolen = The man whose car was stolen.
The car of which the tires were stolen = *The car which's tires were stolen.

Note that that last sentence is not correct, I just included it for illustration!

  • Oh, so of which here is basically whose for inanimate objects. Thank you so much. Besides it, is considering (prep.) which as inversion of prepositions so putting the preposition into the end of the clause when interpreting it, wrong way to interpret (prep.) which? It worked for many sentences that have (prep.) which, but seems to be not working for some I mentioned. Dec 21 '17 at 12:42
  • 1
    @K._ It is not a wrong way to interpret it, but you should be aware it is not a universally applicable way to interpret it. Yes, in many cases prepositions can have several correct places in a sentence, but not always. Just remember that there is hardly any so-called "rule" in any language that has no exceptions :)
    – oerkelens
    Dec 21 '17 at 12:48

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .